//导入 express 模块
const express = require('express');
//创建 express 的服务器实例
const app = express();

// 配置解析表单数据的中间件
app.use(express.urlencoded({ extended: false }));

// 必须在配置CORS中间件之前，配置JSONP接口
app.get('/api/jsonp', (req, res) => {
  // TODO:定义 JSONP 接口具体实现过程
  // 1.得到函数名称
  const funcName = req.query.callback;
  // 2.定义要发送到客户端数据对象
  const data = { name: 'zs', age: 22 };
  // 3.拼接一个函数调用
  const scriptStr = `${funcName}(${JSON.stringify(data)})`;
  // 4.把拼接的字符串响应该给客户端
  res.send(scriptStr);
});

// core中间件要配置在路由之前，从而解决接口跨域问题
const cors = require('cors');
app.use(cors());

// 导入路由模块
const router = require('./16.apiRouter');
// 全局注册路由模块
app.use('/api', router);

//调用 app.listen 方法，指定端口号并启动web服务器
app.listen(80, function () {
  console.log('Express server running at http://127.0.0.1');
});
